{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<bound method NDFrame.head of                  0                       1   2        3       4       5  \\\n",
       "0       2019162542  /front-api/bill/create   8  1057.31   88.75  177.72   \n",
       "1           162644  /front-api/bill/create   5   749.12  103.79  240.38   \n",
       "2           162742  /front-api/bill/create   5   845.84  136.31  225.73   \n",
       "3           162808  /front-api/bill/create   9  1305.52   90.12  196.61   \n",
       "4           162943  /front-api/bill/create   3   568.89  138.45  232.02   \n",
       "...            ...                     ...  ..      ...     ...     ...   \n",
       "179491    13438800  /front-api/bill/create  11  2783.48   99.24  489.90   \n",
       "179492    13438866  /front-api/bill/create  10  1951.10   85.37  529.51   \n",
       "179493    13438917  /front-api/bill/create   3   494.17  103.95  211.47   \n",
       "179494    13438981  /front-api/bill/create   9  1798.28  101.11  433.30   \n",
       "179495    13439086  /front-api/bill/create   6  1017.97   74.45  298.97   \n",
       "\n",
       "            6   7                    8  \n",
       "0       132.0  60  2018-11-01 00:00:07  \n",
       "1       149.0  60  2018-11-01 00:01:07  \n",
       "2       169.0  60  2018-11-01 00:02:07  \n",
       "3       145.0  60  2018-11-01 00:03:07  \n",
       "4       189.0  60  2018-11-01 00:04:07  \n",
       "...       ...  ..                  ...  \n",
       "179491  253.0  60  2019-05-30 23:06:21  \n",
       "179492  195.0  60  2019-05-30 23:07:21  \n",
       "179493  164.0  60  2019-05-30 23:08:21  \n",
       "179494  199.0  60  2019-05-30 23:09:21  \n",
       "179495  169.0  60  2019-05-30 23:10:21  \n",
       "\n",
       "[179496 rows x 9 columns]>"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.read_csv('./log.txt',header = None, sep = '\\t')\n",
    "df.head"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "df.columns = ['id', 'api', 'count', 'res_time_sum', 'res_time_min', 'res_time_max', 'res_time_avg', 'interval', 'created_at']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>api</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2019162542</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>162644</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>162742</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           id                     api  count  res_time_sum  res_time_min  \\\n",
       "0  2019162542  /front-api/bill/create      8       1057.31         88.75   \n",
       "1      162644  /front-api/bill/create      5        749.12        103.79   \n",
       "2      162742  /front-api/bill/create      5        845.84        136.31   \n",
       "\n",
       "   res_time_max  res_time_avg  interval           created_at  \n",
       "0        177.72         132.0        60  2018-11-01 00:00:07  \n",
       "1        240.38         149.0        60  2018-11-01 00:01:07  \n",
       "2        225.73         169.0        60  2018-11-01 00:02:07  "
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head(3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>api</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>159674</th>\n",
       "      <td>11911236</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>7</td>\n",
       "      <td>1782.62</td>\n",
       "      <td>100.96</td>\n",
       "      <td>846.53</td>\n",
       "      <td>254.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-08 17:23:57</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>56896</th>\n",
       "      <td>4636279</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>1</td>\n",
       "      <td>238.08</td>\n",
       "      <td>238.08</td>\n",
       "      <td>238.08</td>\n",
       "      <td>238.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-01-06 12:45:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>55943</th>\n",
       "      <td>4573289</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>1</td>\n",
       "      <td>158.45</td>\n",
       "      <td>158.45</td>\n",
       "      <td>158.45</td>\n",
       "      <td>158.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-01-05 10:55:04</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>150243</th>\n",
       "      <td>11183210</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>15</td>\n",
       "      <td>4253.19</td>\n",
       "      <td>111.38</td>\n",
       "      <td>1050.49</td>\n",
       "      <td>283.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-04-27 20:56:45</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>74676</th>\n",
       "      <td>5809208</td>\n",
       "      <td>/front-api/bill/create</td>\n",
       "      <td>4</td>\n",
       "      <td>482.11</td>\n",
       "      <td>91.72</td>\n",
       "      <td>155.55</td>\n",
       "      <td>120.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-01-27 00:08:42</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "              id                     api  count  res_time_sum  res_time_min  \\\n",
       "159674  11911236  /front-api/bill/create      7       1782.62        100.96   \n",
       "56896    4636279  /front-api/bill/create      1        238.08        238.08   \n",
       "55943    4573289  /front-api/bill/create      1        158.45        158.45   \n",
       "150243  11183210  /front-api/bill/create     15       4253.19        111.38   \n",
       "74676    5809208  /front-api/bill/create      4        482.11         91.72   \n",
       "\n",
       "        res_time_max  res_time_avg  interval           created_at  \n",
       "159674        846.53         254.0        60  2019-05-08 17:23:57  \n",
       "56896         238.08         238.0        60  2019-01-06 12:45:07  \n",
       "55943         158.45         158.0        60  2019-01-05 10:55:04  \n",
       "150243       1050.49         283.0        60  2019-04-27 20:56:45  \n",
       "74676         155.55         120.0        60  2019-01-27 00:08:42  "
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.sample(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 179496 entries, 0 to 179495\n",
      "Data columns (total 9 columns):\n",
      " #   Column        Non-Null Count   Dtype  \n",
      "---  ------        --------------   -----  \n",
      " 0   id            179496 non-null  int64  \n",
      " 1   api           179496 non-null  object \n",
      " 2   count         179496 non-null  int64  \n",
      " 3   res_time_sum  179496 non-null  float64\n",
      " 4   res_time_min  179496 non-null  float64\n",
      " 5   res_time_max  179496 non-null  float64\n",
      " 6   res_time_avg  179496 non-null  float64\n",
      " 7   interval      179496 non-null  int64  \n",
      " 8   created_at    179496 non-null  object \n",
      "dtypes: float64(4), int64(3), object(2)\n",
      "memory usage: 12.3+ MB\n"
     ]
    }
   ],
   "source": [
    "df.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count                     179496\n",
       "unique                         1\n",
       "top       /front-api/bill/create\n",
       "freq                      179496\n",
       "Name: api, dtype: object"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['api'].describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = df.drop('api', axis = 1) # api 都一样，删除"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2019162542</td>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>162644</td>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>162742</td>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           id  count  res_time_sum  res_time_min  res_time_max  res_time_avg  \\\n",
       "0  2019162542      8       1057.31         88.75        177.72         132.0   \n",
       "1      162644      5        749.12        103.79        240.38         149.0   \n",
       "2      162742      5        845.84        136.31        225.73         169.0   \n",
       "\n",
       "   interval           created_at  \n",
       "0        60  2018-11-01 00:00:07  \n",
       "1        60  2018-11-01 00:01:07  \n",
       "2        60  2018-11-01 00:02:07  "
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head(3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 179496 entries, 0 to 179495\n",
      "Data columns (total 8 columns):\n",
      " #   Column        Non-Null Count   Dtype  \n",
      "---  ------        --------------   -----  \n",
      " 0   id            179496 non-null  int64  \n",
      " 1   count         179496 non-null  int64  \n",
      " 2   res_time_sum  179496 non-null  float64\n",
      " 3   res_time_min  179496 non-null  float64\n",
      " 4   res_time_max  179496 non-null  float64\n",
      " 5   res_time_avg  179496 non-null  float64\n",
      " 6   interval      179496 non-null  int64  \n",
      " 7   created_at    179496 non-null  object \n",
      "dtypes: float64(4), int64(3), object(1)\n",
      "memory usage: 11.0+ MB\n"
     ]
    }
   ],
   "source": [
    "df.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count                  179496\n",
       "unique                 179496\n",
       "top       2019-05-19 16:30:10\n",
       "freq                        1\n",
       "Name: created_at, dtype: object"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['created_at'].describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>153089</th>\n",
       "      <td>11406128</td>\n",
       "      <td>6</td>\n",
       "      <td>2105.08</td>\n",
       "      <td>125.74</td>\n",
       "      <td>992.46</td>\n",
       "      <td>350.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:00:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153090</th>\n",
       "      <td>11406236</td>\n",
       "      <td>7</td>\n",
       "      <td>2579.11</td>\n",
       "      <td>76.55</td>\n",
       "      <td>987.47</td>\n",
       "      <td>368.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:01:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153091</th>\n",
       "      <td>11406347</td>\n",
       "      <td>7</td>\n",
       "      <td>1277.79</td>\n",
       "      <td>109.65</td>\n",
       "      <td>236.73</td>\n",
       "      <td>182.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:02:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153092</th>\n",
       "      <td>11406446</td>\n",
       "      <td>7</td>\n",
       "      <td>2137.20</td>\n",
       "      <td>131.55</td>\n",
       "      <td>920.52</td>\n",
       "      <td>305.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:03:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153093</th>\n",
       "      <td>11406488</td>\n",
       "      <td>13</td>\n",
       "      <td>2948.70</td>\n",
       "      <td>86.42</td>\n",
       "      <td>491.31</td>\n",
       "      <td>226.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:04:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153968</th>\n",
       "      <td>11475363</td>\n",
       "      <td>6</td>\n",
       "      <td>1083.97</td>\n",
       "      <td>70.85</td>\n",
       "      <td>262.22</td>\n",
       "      <td>180.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:55:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153969</th>\n",
       "      <td>11475483</td>\n",
       "      <td>4</td>\n",
       "      <td>840.00</td>\n",
       "      <td>117.31</td>\n",
       "      <td>382.63</td>\n",
       "      <td>210.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:56:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153970</th>\n",
       "      <td>11475550</td>\n",
       "      <td>2</td>\n",
       "      <td>295.51</td>\n",
       "      <td>101.71</td>\n",
       "      <td>193.80</td>\n",
       "      <td>147.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:57:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153971</th>\n",
       "      <td>11475597</td>\n",
       "      <td>2</td>\n",
       "      <td>431.99</td>\n",
       "      <td>84.43</td>\n",
       "      <td>347.56</td>\n",
       "      <td>215.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:58:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>153972</th>\n",
       "      <td>11475664</td>\n",
       "      <td>3</td>\n",
       "      <td>428.84</td>\n",
       "      <td>103.58</td>\n",
       "      <td>206.57</td>\n",
       "      <td>142.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:59:49</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>884 rows × 8 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "              id  count  res_time_sum  res_time_min  res_time_max  \\\n",
       "153089  11406128      6       2105.08        125.74        992.46   \n",
       "153090  11406236      7       2579.11         76.55        987.47   \n",
       "153091  11406347      7       1277.79        109.65        236.73   \n",
       "153092  11406446      7       2137.20        131.55        920.52   \n",
       "153093  11406488     13       2948.70         86.42        491.31   \n",
       "...          ...    ...           ...           ...           ...   \n",
       "153968  11475363      6       1083.97         70.85        262.22   \n",
       "153969  11475483      4        840.00        117.31        382.63   \n",
       "153970  11475550      2        295.51        101.71        193.80   \n",
       "153971  11475597      2        431.99         84.43        347.56   \n",
       "153972  11475664      3        428.84        103.58        206.57   \n",
       "\n",
       "        res_time_avg  interval           created_at  \n",
       "153089         350.0        60  2019-05-01 00:00:48  \n",
       "153090         368.0        60  2019-05-01 00:01:48  \n",
       "153091         182.0        60  2019-05-01 00:02:48  \n",
       "153092         305.0        60  2019-05-01 00:03:48  \n",
       "153093         226.0        60  2019-05-01 00:04:48  \n",
       "...              ...       ...                  ...  \n",
       "153968         180.0        60  2019-05-01 23:55:49  \n",
       "153969         210.0        60  2019-05-01 23:56:49  \n",
       "153970         147.0        60  2019-05-01 23:57:49  \n",
       "153971         215.0        60  2019-05-01 23:58:49  \n",
       "153972         142.0        60  2019-05-01 23:59:49  \n",
       "\n",
       "[884 rows x 8 columns]"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df[(df.created_at >= '2019-05-01') & (df.created_at <= '2019-05-02') ]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "RangeIndex(start=0, stop=179496, step=1)"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "df.index = df['created_at']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Index: 179496 entries, 2018-11-01 00:00:07 to 2019-05-30 23:10:21\n",
      "Data columns (total 8 columns):\n",
      " #   Column        Non-Null Count   Dtype  \n",
      "---  ------        --------------   -----  \n",
      " 0   id            179496 non-null  int64  \n",
      " 1   count         179496 non-null  int64  \n",
      " 2   res_time_sum  179496 non-null  float64\n",
      " 3   res_time_min  179496 non-null  float64\n",
      " 4   res_time_max  179496 non-null  float64\n",
      " 5   res_time_avg  179496 non-null  float64\n",
      " 6   interval      179496 non-null  int64  \n",
      " 7   created_at    179496 non-null  object \n",
      "dtypes: float64(4), int64(3), object(1)\n",
      "memory usage: 12.3+ MB\n"
     ]
    }
   ],
   "source": [
    "df.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['2018-11-01 00:00:07', '2018-11-01 00:01:07', '2018-11-01 00:02:07',\n",
       "       '2018-11-01 00:03:07', '2018-11-01 00:04:07', '2018-11-01 00:05:07',\n",
       "       '2018-11-01 00:06:07', '2018-11-01 00:07:07', '2018-11-01 00:08:07',\n",
       "       '2018-11-01 00:09:07',\n",
       "       ...\n",
       "       '2019-05-30 23:01:21', '2019-05-30 23:02:21', '2019-05-30 23:03:21',\n",
       "       '2019-05-30 23:04:21', '2019-05-30 23:05:21', '2019-05-30 23:06:21',\n",
       "       '2019-05-30 23:07:21', '2019-05-30 23:08:21', '2019-05-30 23:09:21',\n",
       "       '2019-05-30 23:10:21'],\n",
       "      dtype='object', name='created_at', length=179496)"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 时间字符串索引 转为 时间类型\n",
    "df.index = pd.to_datetime(df.created_at) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "DatetimeIndex(['2018-11-01 00:00:07', '2018-11-01 00:01:07',\n",
       "               '2018-11-01 00:02:07', '2018-11-01 00:03:07',\n",
       "               '2018-11-01 00:04:07', '2018-11-01 00:05:07',\n",
       "               '2018-11-01 00:06:07', '2018-11-01 00:07:07',\n",
       "               '2018-11-01 00:08:07', '2018-11-01 00:09:07',\n",
       "               ...\n",
       "               '2019-05-30 23:01:21', '2019-05-30 23:02:21',\n",
       "               '2019-05-30 23:03:21', '2019-05-30 23:04:21',\n",
       "               '2019-05-30 23:05:21', '2019-05-30 23:06:21',\n",
       "               '2019-05-30 23:07:21', '2019-05-30 23:08:21',\n",
       "               '2019-05-30 23:09:21', '2019-05-30 23:10:21'],\n",
       "              dtype='datetime64[ns]', name='created_at', length=179496, freq=None)"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>interval</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:00:48</th>\n",
       "      <td>11406128</td>\n",
       "      <td>6</td>\n",
       "      <td>2105.08</td>\n",
       "      <td>125.74</td>\n",
       "      <td>992.46</td>\n",
       "      <td>350.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:00:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:01:48</th>\n",
       "      <td>11406236</td>\n",
       "      <td>7</td>\n",
       "      <td>2579.11</td>\n",
       "      <td>76.55</td>\n",
       "      <td>987.47</td>\n",
       "      <td>368.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:01:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:02:48</th>\n",
       "      <td>11406347</td>\n",
       "      <td>7</td>\n",
       "      <td>1277.79</td>\n",
       "      <td>109.65</td>\n",
       "      <td>236.73</td>\n",
       "      <td>182.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:02:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:03:48</th>\n",
       "      <td>11406446</td>\n",
       "      <td>7</td>\n",
       "      <td>2137.20</td>\n",
       "      <td>131.55</td>\n",
       "      <td>920.52</td>\n",
       "      <td>305.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:03:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 00:04:48</th>\n",
       "      <td>11406488</td>\n",
       "      <td>13</td>\n",
       "      <td>2948.70</td>\n",
       "      <td>86.42</td>\n",
       "      <td>491.31</td>\n",
       "      <td>226.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 00:04:48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:55:49</th>\n",
       "      <td>11475363</td>\n",
       "      <td>6</td>\n",
       "      <td>1083.97</td>\n",
       "      <td>70.85</td>\n",
       "      <td>262.22</td>\n",
       "      <td>180.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:55:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:56:49</th>\n",
       "      <td>11475483</td>\n",
       "      <td>4</td>\n",
       "      <td>840.00</td>\n",
       "      <td>117.31</td>\n",
       "      <td>382.63</td>\n",
       "      <td>210.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:56:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:57:49</th>\n",
       "      <td>11475550</td>\n",
       "      <td>2</td>\n",
       "      <td>295.51</td>\n",
       "      <td>101.71</td>\n",
       "      <td>193.80</td>\n",
       "      <td>147.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:57:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:58:49</th>\n",
       "      <td>11475597</td>\n",
       "      <td>2</td>\n",
       "      <td>431.99</td>\n",
       "      <td>84.43</td>\n",
       "      <td>347.56</td>\n",
       "      <td>215.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:58:49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-01 23:59:49</th>\n",
       "      <td>11475664</td>\n",
       "      <td>3</td>\n",
       "      <td>428.84</td>\n",
       "      <td>103.58</td>\n",
       "      <td>206.57</td>\n",
       "      <td>142.0</td>\n",
       "      <td>60</td>\n",
       "      <td>2019-05-01 23:59:49</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>884 rows × 8 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                           id  count  res_time_sum  res_time_min  \\\n",
       "created_at                                                         \n",
       "2019-05-01 00:00:48  11406128      6       2105.08        125.74   \n",
       "2019-05-01 00:01:48  11406236      7       2579.11         76.55   \n",
       "2019-05-01 00:02:48  11406347      7       1277.79        109.65   \n",
       "2019-05-01 00:03:48  11406446      7       2137.20        131.55   \n",
       "2019-05-01 00:04:48  11406488     13       2948.70         86.42   \n",
       "...                       ...    ...           ...           ...   \n",
       "2019-05-01 23:55:49  11475363      6       1083.97         70.85   \n",
       "2019-05-01 23:56:49  11475483      4        840.00        117.31   \n",
       "2019-05-01 23:57:49  11475550      2        295.51        101.71   \n",
       "2019-05-01 23:58:49  11475597      2        431.99         84.43   \n",
       "2019-05-01 23:59:49  11475664      3        428.84        103.58   \n",
       "\n",
       "                     res_time_max  res_time_avg  interval           created_at  \n",
       "created_at                                                                      \n",
       "2019-05-01 00:00:48        992.46         350.0        60  2019-05-01 00:00:48  \n",
       "2019-05-01 00:01:48        987.47         368.0        60  2019-05-01 00:01:48  \n",
       "2019-05-01 00:02:48        236.73         182.0        60  2019-05-01 00:02:48  \n",
       "2019-05-01 00:03:48        920.52         305.0        60  2019-05-01 00:03:48  \n",
       "2019-05-01 00:04:48        491.31         226.0        60  2019-05-01 00:04:48  \n",
       "...                           ...           ...       ...                  ...  \n",
       "2019-05-01 23:55:49        262.22         180.0        60  2019-05-01 23:55:49  \n",
       "2019-05-01 23:56:49        382.63         210.0        60  2019-05-01 23:56:49  \n",
       "2019-05-01 23:57:49        193.80         147.0        60  2019-05-01 23:57:49  \n",
       "2019-05-01 23:58:49        347.56         215.0        60  2019-05-01 23:58:49  \n",
       "2019-05-01 23:59:49        206.57         142.0        60  2019-05-01 23:59:49  \n",
       "\n",
       "[884 rows x 8 columns]"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df['2019-5-1']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "ename": "AttributeError",
     "evalue": "'DataFrame' object has no attribute 'interval'",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mAttributeError\u001b[0m                            Traceback (most recent call last)",
      "\u001b[1;32m<ipython-input-42-355a0f1465a2>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mdf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mdescribe\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[1;32m~\\anaconda3\\lib\\site-packages\\pandas\\core\\generic.py\u001b[0m in \u001b[0;36m__getattr__\u001b[1;34m(self, name)\u001b[0m\n\u001b[0;32m   5272\u001b[0m             \u001b[1;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_info_axis\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_can_hold_identifiers_and_holds_name\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mname\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m   5273\u001b[0m                 \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m[\u001b[0m\u001b[0mname\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 5274\u001b[1;33m             \u001b[1;32mreturn\u001b[0m \u001b[0mobject\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m__getattribute__\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mname\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m   5275\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m   5276\u001b[0m     \u001b[1;32mdef\u001b[0m \u001b[0m__setattr__\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mname\u001b[0m\u001b[1;33m:\u001b[0m \u001b[0mstr\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mvalue\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m->\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;31mAttributeError\u001b[0m: 'DataFrame' object has no attribute 'interval'"
     ]
    }
   ],
   "source": [
    "df.interval.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:00:07</th>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:01:07</th>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:02:07</th>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:03:07</th>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:04:07</th>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-11-01 00:00:07      8       1057.31         88.75        177.72   \n",
       "2018-11-01 00:01:07      5        749.12        103.79        240.38   \n",
       "2018-11-01 00:02:07      5        845.84        136.31        225.73   \n",
       "2018-11-01 00:03:07      9       1305.52         90.12        196.61   \n",
       "2018-11-01 00:04:07      3        568.89        138.45        232.02   \n",
       "\n",
       "                     res_time_avg           created_at  \n",
       "created_at                                              \n",
       "2018-11-01 00:00:07         132.0  2018-11-01 00:00:07  \n",
       "2018-11-01 00:01:07         149.0  2018-11-01 00:01:07  \n",
       "2018-11-01 00:02:07         169.0  2018-11-01 00:02:07  \n",
       "2018-11-01 00:03:07         145.0  2018-11-01 00:03:07  \n",
       "2018-11-01 00:04:07         189.0  2018-11-01 00:04:07  "
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#df = df.drop(['id', 'interval'], axis = 1)\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "DatetimeIndex: 179496 entries, 2018-11-01 00:00:07 to 2019-05-30 23:10:21\n",
      "Data columns (total 6 columns):\n",
      " #   Column        Non-Null Count   Dtype  \n",
      "---  ------        --------------   -----  \n",
      " 0   count         179496 non-null  int64  \n",
      " 1   res_time_sum  179496 non-null  float64\n",
      " 2   res_time_min  179496 non-null  float64\n",
      " 3   res_time_max  179496 non-null  float64\n",
      " 4   res_time_avg  179496 non-null  float64\n",
      " 5   created_at    179496 non-null  object \n",
      "dtypes: float64(4), int64(1), object(1)\n",
      "memory usage: 9.6+ MB\n"
     ]
    }
   ],
   "source": [
    "df.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>179496.000000</td>\n",
       "      <td>179496.000000</td>\n",
       "      <td>179496.000000</td>\n",
       "      <td>179496.000000</td>\n",
       "      <td>179496.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>7.175909</td>\n",
       "      <td>1393.177832</td>\n",
       "      <td>108.419626</td>\n",
       "      <td>359.880374</td>\n",
       "      <td>187.812208</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>4.325160</td>\n",
       "      <td>1499.486073</td>\n",
       "      <td>79.640693</td>\n",
       "      <td>638.919827</td>\n",
       "      <td>224.464813</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>36.550000</td>\n",
       "      <td>3.210000</td>\n",
       "      <td>36.550000</td>\n",
       "      <td>36.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>4.000000</td>\n",
       "      <td>607.707500</td>\n",
       "      <td>83.410000</td>\n",
       "      <td>198.280000</td>\n",
       "      <td>144.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>7.000000</td>\n",
       "      <td>1154.905000</td>\n",
       "      <td>97.120000</td>\n",
       "      <td>256.090000</td>\n",
       "      <td>167.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>10.000000</td>\n",
       "      <td>1834.117500</td>\n",
       "      <td>116.990000</td>\n",
       "      <td>374.410000</td>\n",
       "      <td>202.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>31.000000</td>\n",
       "      <td>142650.550000</td>\n",
       "      <td>18896.640000</td>\n",
       "      <td>142468.270000</td>\n",
       "      <td>71325.000000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "               count   res_time_sum   res_time_min   res_time_max  \\\n",
       "count  179496.000000  179496.000000  179496.000000  179496.000000   \n",
       "mean        7.175909    1393.177832     108.419626     359.880374   \n",
       "std         4.325160    1499.486073      79.640693     638.919827   \n",
       "min         1.000000      36.550000       3.210000      36.550000   \n",
       "25%         4.000000     607.707500      83.410000     198.280000   \n",
       "50%         7.000000    1154.905000      97.120000     256.090000   \n",
       "75%        10.000000    1834.117500     116.990000     374.410000   \n",
       "max        31.000000  142650.550000   18896.640000  142468.270000   \n",
       "\n",
       "        res_time_avg  \n",
       "count  179496.000000  \n",
       "mean      187.812208  \n",
       "std       224.464813  \n",
       "min        36.000000  \n",
       "25%       144.000000  \n",
       "50%       167.000000  \n",
       "75%       202.000000  \n",
       "max     71325.000000  "
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYMAAAD4CAYAAAAO9oqkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAARAUlEQVR4nO3df6zddX3H8efLAtpUHSB4w1q2stksot1QG2jistyAgwLLyhJYYE6KYeliIMGsyaz+g79IcBliSJSlGw3FqJX4YzSCYQ1y40zkpyC1EEbFTgqExhSQqxF39b0/zqfbaTm397S9veee0+cjubnn+/5+zvd83vnee1/3+z3fc06qCknS0e11g56AJGnwDANJkmEgSTIMJEkYBpIk4JhBT+BQnXTSSbV06dJ9ar/4xS9YtGjRYCY0i0alD7CX+WpUehmVPmBuenn44Yd/VlUn91o3tGGwdOlSHnrooX1qExMTjI+PD2ZCs2hU+gB7ma9GpZdR6QPmppck/z3dOk8TSZIMA0mSYSBJwjCQJGEYSJIwDCRJGAaSJAwDSRKGgSSJIX4Fsg7O0vV3DuRxb101Gm8VII06w2AO9fsHed3yKa4Y0B9vSUcnTxNJkgwDSZJhIEnCMJAkYRhIkjAMJEkYBpIkjtLXGQzqBViSNF95ZCBJMgwkSYaBJAnDQJLEQYRBkgVJHknyrbZ8WpL7kzyV5KtJjmv117flHW390q5tfLTVn0xyXld9VavtSLJ+9tqTJPXjYI4MrgGe6Fr+DHBjVS0DXgSubPUrgRer6m3AjW0cSU4HLgXeAawCvtACZgHweeB84HTgsjZWkjRH+gqDJEuAC4F/a8sBzga+1oZsAi5qt1e3Zdr6c9r41cDmqnq1qn4C7ADObF87qurpqvo1sLmNlSTNkX5fZ/A54B+BN7XltwAvVdVUW94FLG63FwPPAFTVVJKX2/jFwH1d2+y+zzP71c/qNYkka4G1AGNjY0xMTOyzfnJy8jW1XtYtn5pxzCCNLZz/c+xXv/tkGNjL/DMqfcDge5kxDJL8BbC7qh5OMr633GNozbBuunqvo5PqUaOqNgAbAFasWFHj4+P7rJ+YmGD/Wi/z/YNj1i2f4oZto/F6wFtXLeprnwyDfn++hsGo9DIqfcDge+nnL857gb9McgHwBuDNdI4Ujk9yTDs6WAI818bvAk4FdiU5BvgdYE9Xfa/u+0xXlyTNgRmfM6iqj1bVkqpaSucJ4O9U1fuBe4GL27A1wB3t9pa2TFv/naqqVr+0XW10GrAMeAB4EFjWrk46rj3GllnpTpLUl8M5F/ERYHOSTwOPALe0+i3AF5PsoHNEcClAVW1PcjvwODAFXFVVvwFIcjVwN7AA2FhV2w9jXpKkg3RQYVBVE8BEu/00nSuB9h/zK+CSae5/HXBdj/pdwF0HMxdJ0uzxFciSJMNAkmQYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kSfYRBkjckeSDJD5NsT/KJVj8tyf1Jnkry1STHtfrr2/KOtn5p17Y+2upPJjmvq76q1XYkWT/7bUqSDqSfI4NXgbOr6k+AM4BVSVYCnwFurKplwIvAlW38lcCLVfU24MY2jiSnA5cC7wBWAV9IsiDJAuDzwPnA6cBlbawkaY7MGAbVMdkWj21fBZwNfK3VNwEXtdur2zJt/TlJ0uqbq+rVqvoJsAM4s33tqKqnq+rXwOY2VpI0R47pZ1D77/1h4G10/ov/MfBSVU21IbuAxe32YuAZgKqaSvIy8JZWv69rs933eWa/+lnTzGMtsBZgbGyMiYmJfdZPTk6+ptbLuuVTM44ZpLGF83+O/ep3nwwDe5l/RqUPGHwvfYVBVf0GOCPJ8cA3gbf3Gta+Z5p109V7HZ1UjxpVtQHYALBixYoaHx/fZ/3ExAT713q5Yv2dM44ZpHXLp7hhW1+7Zt67ddWivvbJMOj352sYjEovo9IHDL6Xg7qaqKpeAiaAlcDxSfb+xVoCPNdu7wJOBWjrfwfY013f7z7T1SVJc2TGfz+TnAz8T1W9lGQh8D46TwrfC1xM5xz/GuCOdpctbfn7bf13qqqSbAG+nOSzwO8Cy4AH6BwxLEtyGvAsnSeZ/2b2WtQgbXv25YEdie28/sKBPK40jPo5F3EKsKk9b/A64Paq+laSx4HNST4NPALc0sbfAnwxyQ46RwSXAlTV9iS3A48DU8BV7fQTSa4G7gYWABuravusdShJmtGMYVBVjwHv6lF/ms6VQPvXfwVcMs22rgOu61G/C7irj/lKko4AX4EsSTIMJEmGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEnCMJAkYRhIkugjDJKcmuTeJE8k2Z7kmlY/McnWJE+17ye0epLclGRHkseSvLtrW2va+KeSrOmqvyfJtnafm5LkSDQrSeqtnyODKWBdVb0dWAlcleR0YD1wT1UtA+5pywDnA8va11rgZuiEB3AtcBZwJnDt3gBpY9Z23W/V4bcmSerXjGFQVc9X1Q/a7VeAJ4DFwGpgUxu2Cbio3V4N3FYd9wHHJzkFOA/YWlV7qupFYCuwqq17c1V9v6oKuK1rW5KkOXDMwQxOshR4F3A/MFZVz0MnMJK8tQ1bDDzTdbddrXag+q4e9V6Pv5bOEQRjY2NMTEzss35ycvI1tV7WLZ+accwgjS2c/3Ps1yB76edn4WD0+/M1DEall1HpAwbfS99hkOSNwNeBD1fVzw9wWr/XijqE+muLVRuADQArVqyo8fHxfdZPTEywf62XK9bfOeOYQVq3fIobth1UTs9bg+xl5/vHZ3V7/f58DYNR6WVU+oDB99LX1URJjqUTBF+qqm+08gvtFA/t++5W3wWc2nX3JcBzM9SX9KhLkuZIP1cTBbgFeKKqPtu1aguw94qgNcAdXfXL21VFK4GX2+mku4Fzk5zQnjg+F7i7rXslycr2WJd3bUuSNAf6OX5/L/ABYFuSR1vtY8D1wO1JrgR+ClzS1t0FXADsAH4JfBCgqvYk+RTwYBv3yara025/CLgVWAh8u31JkubIjGFQVd+j93l9gHN6jC/gqmm2tRHY2KP+EPDOmeYiSToyfAWyJMkwkCQZBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkgQcM+gJSEfK0vV3zur21i2f4oo+trnz+gtn9XGlueCRgSTJMJAkGQaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEmijzBIsjHJ7iQ/6qqdmGRrkqfa9xNaPUluSrIjyWNJ3t11nzVt/FNJ1nTV35NkW7vPTUky201Kkg6snyODW4FV+9XWA/dU1TLgnrYMcD6wrH2tBW6GTngA1wJnAWcC1+4NkDZmbdf99n8sSdIRNmMYVNV3gT37lVcDm9rtTcBFXfXbquM+4PgkpwDnAVurak9VvQhsBVa1dW+uqu9XVQG3dW1LkjRHDvVjL8eq6nmAqno+yVtbfTHwTNe4Xa12oPquHvWekqylcxTB2NgYExMT+6yfnJx8Ta2XdcunZhwzSGML5/8c+3U09tLPz+Cg9fu7Mt+NSh8w+F5m+zOQe53vr0Oo91RVG4ANACtWrKjx8fF91k9MTLB/rZd+Psd2kNYtn+KGbaPx8dRHYy873z9+5CdzmPr9XZnvRqUPGHwvh3o10QvtFA/t++5W3wWc2jVuCfDcDPUlPeqSpDl0qGGwBdh7RdAa4I6u+uXtqqKVwMvtdNLdwLlJTmhPHJ8L3N3WvZJkZbuK6PKubUmS5siMx7xJvgKMAycl2UXnqqDrgduTXAn8FLikDb8LuADYAfwS+CBAVe1J8ingwTbuk1W190npD9G5Ymkh8O32JUmaQzOGQVVdNs2qc3qMLeCqabazEdjYo/4Q8M6Z5iFJOnJ8BbIkyTCQJBkGkiQMA0kShoEkCcNAkoRhIEnCMJAkYRhIkjAMJEkYBpIkDANJEoaBJAnDQJKEYSBJwjCQJGEYSJLo45POJB2cpevvHMjj7rz+woE8rkaDRwaSJMNAkmQYSJIwDCRJGAaSJAwDSRKGgSQJw0CShGEgScIwkCRhGEiSMAwkSRgGkiQMA0kShoEkCcNAkoRhIEnCTzqTRsbBfMLauuVTXDGLn8jmp6wNP48MJEmGgSTJMJAkMY/CIMmqJE8m2ZFk/aDnI0lHk3nxBHKSBcDngT8HdgEPJtlSVY8PdmaS+nEwT17PpltXLRrI446ieREGwJnAjqp6GiDJZmA1YBhImta2Z1+e1auiDsaoXUGVqhr0HEhyMbCqqv6uLX8AOKuqrt5v3FpgbVv8I+DJ/TZ1EvCzIzzduTAqfYC9zFej0suo9AFz08vvV9XJvVbMlyOD9Ki9JqWqagOwYdqNJA9V1YrZnNggjEofYC/z1aj0Mip9wOB7mS9PIO8CTu1aXgI8N6C5SNJRZ76EwYPAsiSnJTkOuBTYMuA5SdJRY16cJqqqqSRXA3cDC4CNVbX9EDY17SmkITMqfYC9zFej0suo9AED7mVePIEsSRqs+XKaSJI0QIaBJGk0wmCU3soiyc4k25I8muShQc/nYCTZmGR3kh911U5MsjXJU+37CYOcY7+m6eXjSZ5t++bRJBcMco79SHJqknuTPJFke5JrWn3o9ssBehmq/ZLkDUkeSPLD1scnWv20JPe3ffLVdjHN3M1r2J8zaG9l8V90vZUFcNmwvpVFkp3AiqoauhfSJPkzYBK4rare2Wr/BOypqutbUJ9QVR8Z5Dz7MU0vHwcmq+qfBzm3g5HkFOCUqvpBkjcBDwMXAVcwZPvlAL38NUO0X5IEWFRVk0mOBb4HXAP8A/CNqtqc5F+AH1bVzXM1r1E4Mvi/t7Koql8De9/KQnOsqr4L7NmvvBrY1G5vovPLO+9N08vQqarnq+oH7fYrwBPAYoZwvxygl6FSHZNt8dj2VcDZwNdafc73ySiEwWLgma7lXQzhD0iXAv4jycPt7TeG3VhVPQ+dX2bgrQOez+G6Oslj7TTSvD+10i3JUuBdwP0M+X7ZrxcYsv2SZEGSR4HdwFbgx8BLVTXVhsz537FRCIO+3spiiLy3qt4NnA9c1U5XaH64GfhD4AzgeeCGwU6nf0neCHwd+HBV/XzQ8zkcPXoZuv1SVb+pqjPovNvCmcDbew2byzmNQhiM1FtZVNVz7ftu4Jt0flCG2QvtXO/ec767BzyfQ1ZVL7Rf4t8C/8qQ7Jt2XvrrwJeq6hutPJT7pVcvw7pfAKrqJWACWAkcn2TvC4Hn/O/YKITByLyVRZJF7YkxkiwCzgV+dOB7zXtbgDXt9hrgjgHO5bDs/ePZ/BVDsG/ak5W3AE9U1We7Vg3dfpmul2HbL0lOTnJ8u70QeB+d5z/uBS5uw+Z8nwz91UQA7VKyz/H/b2Vx3YCndEiS/AGdowHovFXIl4eplyRfAcbpvBXvC8C1wL8DtwO/B/wUuKSq5v0Ts9P0Mk7nVEQBO4G/33vefb5K8qfAfwLbgN+28sfonGsfqv1ygF4uY4j2S5I/pvME8QI6/5DfXlWfbL//m4ETgUeAv62qV+dsXqMQBpKkwzMKp4kkSYfJMJAkGQaSJMNAkoRhIEnCMJAkYRhIkoD/BSxJvCEEuUBmAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df['count'].hist() #直方图 每分钟调用次数\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 多在10次内 \n",
    "df['count'].hist(bins = 30) #直方图 每分钟调用次数\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 切一天数据 绘制一天接口调用情况\n",
    "df['2018-12-10']['count'].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-12-10 00:00:00</th>\n",
       "      <td>4.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 01:00:00</th>\n",
       "      <td>1.589744</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 02:00:00</th>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 03:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 04:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 05:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 06:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 07:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 08:00:00</th>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 09:00:00</th>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 10:00:00</th>\n",
       "      <td>1.428571</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 11:00:00</th>\n",
       "      <td>1.945946</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 12:00:00</th>\n",
       "      <td>3.508772</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 13:00:00</th>\n",
       "      <td>7.237288</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 14:00:00</th>\n",
       "      <td>9.666667</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 15:00:00</th>\n",
       "      <td>11.450000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 16:00:00</th>\n",
       "      <td>10.416667</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 17:00:00</th>\n",
       "      <td>8.450000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 18:00:00</th>\n",
       "      <td>8.516667</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 19:00:00</th>\n",
       "      <td>10.250000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 20:00:00</th>\n",
       "      <td>11.550000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 21:00:00</th>\n",
       "      <td>11.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 22:00:00</th>\n",
       "      <td>8.333333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 23:00:00</th>\n",
       "      <td>5.559322</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                         count\n",
       "created_at                    \n",
       "2018-12-10 00:00:00   4.000000\n",
       "2018-12-10 01:00:00   1.589744\n",
       "2018-12-10 02:00:00   1.000000\n",
       "2018-12-10 03:00:00        NaN\n",
       "2018-12-10 04:00:00        NaN\n",
       "2018-12-10 05:00:00        NaN\n",
       "2018-12-10 06:00:00        NaN\n",
       "2018-12-10 07:00:00        NaN\n",
       "2018-12-10 08:00:00        NaN\n",
       "2018-12-10 09:00:00   1.000000\n",
       "2018-12-10 10:00:00   1.428571\n",
       "2018-12-10 11:00:00   1.945946\n",
       "2018-12-10 12:00:00   3.508772\n",
       "2018-12-10 13:00:00   7.237288\n",
       "2018-12-10 14:00:00   9.666667\n",
       "2018-12-10 15:00:00  11.450000\n",
       "2018-12-10 16:00:00  10.416667\n",
       "2018-12-10 17:00:00   8.450000\n",
       "2018-12-10 18:00:00   8.516667\n",
       "2018-12-10 19:00:00  10.250000\n",
       "2018-12-10 20:00:00  11.550000\n",
       "2018-12-10 21:00:00  11.000000\n",
       "2018-12-10 22:00:00   8.333333\n",
       "2018-12-10 23:00:00   5.559322"
      ]
     },
     "execution_count": 67,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 凌晨时间无人访问， 下午2，3点第一个访问高峰，晚上，8，9点，第二个访问高峰\n",
    "# 用count重采样，用一个小时进行采样，没那么多数据点了，图像比较平滑\n",
    "df2 = df['2018-12-10']\n",
    "df2 = df2[['count']].resample('1H').mean() # 两个中括号将Series 转为 DataFrame，以便mean\n",
    "df2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df2['count'].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "## 折线图和直方图， 可以看到业务的高峰时段在什么地方， 分不清具体时间，绘制柱状图\n",
    "plt.figure(figsize = (12,4)) # 英寸\n",
    "df2['count'].plot(kind = 'bar')\n",
    "plt.xticks(rotation = 45) # 旋转\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 分析有没有异常时段，访问接口过于频繁，可能就是黑客潮水攻击\n",
    "df['2018-12-10'][['count']].boxplot(showmeans = True, meanline = True)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 20:47:09</th>\n",
       "      <td>21</td>\n",
       "      <td>3117.20</td>\n",
       "      <td>84.90</td>\n",
       "      <td>260.82</td>\n",
       "      <td>148.0</td>\n",
       "      <td>2018-11-01 20:47:09</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 21:03:09</th>\n",
       "      <td>21</td>\n",
       "      <td>3706.20</td>\n",
       "      <td>78.12</td>\n",
       "      <td>321.47</td>\n",
       "      <td>176.0</td>\n",
       "      <td>2018-11-01 21:03:09</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 21:13:09</th>\n",
       "      <td>24</td>\n",
       "      <td>4602.03</td>\n",
       "      <td>76.31</td>\n",
       "      <td>391.12</td>\n",
       "      <td>191.0</td>\n",
       "      <td>2018-11-01 21:13:09</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-02 21:34:11</th>\n",
       "      <td>30</td>\n",
       "      <td>4610.15</td>\n",
       "      <td>72.49</td>\n",
       "      <td>463.41</td>\n",
       "      <td>153.0</td>\n",
       "      <td>2018-11-02 21:34:11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-03 14:20:13</th>\n",
       "      <td>21</td>\n",
       "      <td>3113.93</td>\n",
       "      <td>74.29</td>\n",
       "      <td>266.20</td>\n",
       "      <td>148.0</td>\n",
       "      <td>2018-11-03 14:20:13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 21:33:21</th>\n",
       "      <td>27</td>\n",
       "      <td>6456.64</td>\n",
       "      <td>99.65</td>\n",
       "      <td>978.91</td>\n",
       "      <td>239.0</td>\n",
       "      <td>2019-05-30 21:33:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 21:43:21</th>\n",
       "      <td>21</td>\n",
       "      <td>6371.84</td>\n",
       "      <td>65.98</td>\n",
       "      <td>1175.37</td>\n",
       "      <td>303.0</td>\n",
       "      <td>2019-05-30 21:43:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 21:47:21</th>\n",
       "      <td>21</td>\n",
       "      <td>3992.83</td>\n",
       "      <td>87.83</td>\n",
       "      <td>440.88</td>\n",
       "      <td>190.0</td>\n",
       "      <td>2019-05-30 21:47:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 21:53:21</th>\n",
       "      <td>24</td>\n",
       "      <td>8467.02</td>\n",
       "      <td>120.22</td>\n",
       "      <td>1511.17</td>\n",
       "      <td>352.0</td>\n",
       "      <td>2019-05-30 21:53:21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2019-05-30 22:17:21</th>\n",
       "      <td>21</td>\n",
       "      <td>4926.35</td>\n",
       "      <td>85.01</td>\n",
       "      <td>826.90</td>\n",
       "      <td>234.0</td>\n",
       "      <td>2019-05-30 22:17:21</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>746 rows × 6 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-11-01 20:47:09     21       3117.20         84.90        260.82   \n",
       "2018-11-01 21:03:09     21       3706.20         78.12        321.47   \n",
       "2018-11-01 21:13:09     24       4602.03         76.31        391.12   \n",
       "2018-11-02 21:34:11     30       4610.15         72.49        463.41   \n",
       "2018-11-03 14:20:13     21       3113.93         74.29        266.20   \n",
       "...                    ...           ...           ...           ...   \n",
       "2019-05-30 21:33:21     27       6456.64         99.65        978.91   \n",
       "2019-05-30 21:43:21     21       6371.84         65.98       1175.37   \n",
       "2019-05-30 21:47:21     21       3992.83         87.83        440.88   \n",
       "2019-05-30 21:53:21     24       8467.02        120.22       1511.17   \n",
       "2019-05-30 22:17:21     21       4926.35         85.01        826.90   \n",
       "\n",
       "                     res_time_avg           created_at  \n",
       "created_at                                              \n",
       "2018-11-01 20:47:09         148.0  2018-11-01 20:47:09  \n",
       "2018-11-01 21:03:09         176.0  2018-11-01 21:03:09  \n",
       "2018-11-01 21:13:09         191.0  2018-11-01 21:13:09  \n",
       "2018-11-02 21:34:11         153.0  2018-11-02 21:34:11  \n",
       "2018-11-03 14:20:13         148.0  2018-11-03 14:20:13  \n",
       "...                           ...                  ...  \n",
       "2019-05-30 21:33:21         239.0  2019-05-30 21:33:21  \n",
       "2019-05-30 21:43:21         303.0  2019-05-30 21:43:21  \n",
       "2019-05-30 21:47:21         190.0  2019-05-30 21:47:21  \n",
       "2019-05-30 21:53:21         352.0  2019-05-30 21:53:21  \n",
       "2019-05-30 22:17:21         234.0  2019-05-30 22:17:21  \n",
       "\n",
       "[746 rows x 6 columns]"
      ]
     },
     "execution_count": 72,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df[df['count'] > 20]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x1f82fa0d508>"
      ]
     },
     "execution_count": 76,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 某一天的响应时间，平均响应时间\n",
    "df['2018-12-10']['res_time_avg'].plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x1f82cfbaac8>"
      ]
     },
     "execution_count": 77,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAD5CAYAAADcDXXiAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAZJUlEQVR4nO3dfXRc9X3n8fdHD5YgYEwM6LiyN+bBbWW8LcnRIWzw2fVDCBhIcE5wDz7blBSdCFOs0m0hBrTbNGlnC0kamrAtYCIXZxtEeEjAGEjLYmlz3ABBxo4BqwkucYqKa5fFdm1jyZb83T/mypHtkTV6nJnrz+ucOTP3d+/c+U4y/ujH7/7uvYoIzMwsXcoKXYCZmY09h7uZWQo53M3MUsjhbmaWQg53M7MUqih0AQBnnXVWzJw5s9BlmOW0f/9+PvCBDxS6DLPjbNiw4d2IODvXuqII95kzZ9LR0VHoMsxyam9vZ968eYUuw+w4kn4x2Lq8h2UklUvaKGltsvyQpJ9L2pQ8LkraJembkrZK2izpI6P/CmZmNhzD6bnfAnQCkwe03RYRjx+z3SJgVvL4KHBf8mxmZhMkr567pOnAVcC38tj8GuDbkfUSMEXStFHUaGZmw5Rvz/0vgS8Apx/TnpH0x8ALwO0R0QPUAm8P2KYrads+8I2SGoFGgJqaGtrb24ddvNlE2Ldvn3+fVnKGDHdJVwM7I2KDpHkDVt0B/CswCVgJrAC+DCjHbo67gE1ErEzeR319ffiAlRUrH1C1UpTPsMylwKckbQMeARZI+tuI2J4MvfQAfwNcnGzfBcwY8P7pwDtjWLPZhGhtbWXOnDksXLiQOXPm0NraWuiSzPI2ZM89Iu4g20sn6bnfGhG/LWlaRGyXJGAx8HryljXAckmPkD2QuicitufYtVnRam1tpbm5mZaWFvr6+igvL6ehoQGApUuXFrg6s6GN5gzV70h6DXgNOAv4s6T9WeAtYCvwIPB7o6rQrAAymQwtLS3Mnz+fiooK5s+fT0tLC5lMptClmeVFxXA99/r6+vBJTFZMysvL6e7uprKy8siY+6FDh6iurqavr6/Q5ZkBIGlDRNTnWudry5jlUFdXx/r1649qW79+PXV1dQWqyGx4HO5mOTQ3N9PQ0EBbWxu9vb20tbXR0NBAc3NzoUszy0tRXFvGrNj0HzRtamqis7OTuro6MpmMD6ZayfCYu9kQPM/dipXH3M3MTjIOdzOzFHK4m5mlkMPdzCyFHO5mZinkcDczSyGHu5lZCjnczcxSyOFuZpZCDnczsxRyuJuZpZDD3cwshRzuZmYp5HA3M0shh7uZWQrlHe6SyiVtlLQ2WT5X0suS3pT0XUmTkvaqZHlrsn7m+JRuZmaDGU7P/Ragc8Dy3cA9ETEL2AU0JO0NwK6IuAC4J9nOzMwmUF7hLmk6cBXwrWRZwALg8WST1cDi5PU1yTLJ+oXJ9mZmNkHyvYfqXwJfAE5PlqcCuyOiN1nuAmqT17XA2wAR0StpT7L9uwN3KKkRaASoqamhvb19hF/BbHzt27fPv08rOUOGu6SrgZ0RsUHSvP7mHJtGHut+2RCxElgJ2Xuo+h6VVqx8D1UrRfn03C8FPiXpSqAamEy2Jz9FUkXSe58OvJNs3wXMALokVQBnAO+NeeVmZjaoIcfcI+KOiJgeETOB64B1EfFfgTbg2mSz64GnktdrkmWS9esi4rieu5mZjZ/RzHNfAfyhpK1kx9RbkvYWYGrS/ofA7aMr0czMhivfA6oAREQ70J68fgu4OMc23cCSMajNzMxGyGeompmlkMPdzCyFHO5mZinkcDczSyGHu5lZCjnczcxSyOFuNojW1lbmzJnDwoULmTNnDq2trYUuySxvw5rnbnayaG1tpbm5mZaWFvr6+igvL6ehIXtV66VLlxa4OrOhuedulkMmk6GlpYX58+dTUVHB/PnzaWlpIZPJFLo0s7w43M1y6OzsZO7cuUe1zZ07l87OzkHeYVZcHO5mOdTV1bF+/fqj2tavX09dXV2BKjIbHoe7WQ7Nzc00NDTQ1tZGb28vbW1tNDQ00NzcXOjSzPLiA6pmOfQfNG1qaqKzs5O6ujoymYwPplrJUDFcar2+vj46OjoKXYZZTr4TkxUrSRsioj7XOg/LmJmlkMPdzCyFHO5mZinkcDcbhC8/YKXMs2XMcvDlB6zUDTlbRlI18EOgiuwfg8cj4ouSHgL+C7An2fRzEbFJkoBvAFcC7yftr57oMzxbxorNnDlzWLx4MU8++eSRqZD9y6+//nqhyzMDTjxbJp+eew+wICL2SaoE1kt6Lll3W0Q8fsz2i4BZyeOjwH3Js1nJ2LJlC++///5xPfdt27YVujSzvAw55h5Z+5LFyuRxou7+NcC3k/e9BEyRNG30pZpNnEmTJrF8+fKjLhy2fPlyJk2aVOjSzPKS1wFVSeWSNgE7gecj4uVkVUbSZkn3SKpK2mqBtwe8vStpMysZBw8e5N577z3q8gP33nsvBw8eLHRpZnnJ64BqRPQBF0maAnxf0hzgDuBfgUnASmAF8GVAuXZxbIOkRqARoKamhvb29pHUbzYuPvShD1FbW8vll1/OoUOHqKys5OKLLwbwb9VKwrBmy0TEbkntwBUR8bWkuUfS3wC3JstdwIwBb5sOvJNjXyvJ/lGgvr4+fHq3FZOrr76a+++/n7vvvpvZs2ezZcsWVqxYwbJly3wpAisJQ4a7pLOBQ0mwnwJ8HLhb0rSI2J7MjlkM9E8hWAMsl/QI2QOpeyJi+zjVbzYu2traWLFiBatWrToyW2bFihU8+eSThS7NLC/5TIX8DWA1UE52jP7RiPiypHXA2WSHYTYBy5IZNQL+F3AF2amQvxsRJ5zn6KmQVmzKy8vp7u6msrLyyIXDDh06RHV1NX19fYUuzwwY5VTIiNgMfDhH+4JBtg/g5uEWaVZM+m/WMX/+/CNtvlmHlRJffsAsB9+sw0qdLz9glsPSpUv50Y9+xKJFi+jp6aGqqorPf/7zvvSAlQyHu1kOra2tPPPMMzz33HNHnaH6sY99zAFvJcHDMmY5ZDIZWlpajjpDtaWlhUwmU+jSzPLicDfLobOzk7lz5x7VNnfuXDo7OwtUkdnwONzNcuifLTOQZ8tYKXG4m+Xg2TJW6nxA1SyH/oOmTU1NR85QzWQyPphqJWPIM1Qngs9QtWLWf4aqWbE50RmqHpYxM0shh7vZIHyDbCtlHnM3y8E3yLZS5567WQ4+iclKncPdLAefxGSlzuFuloNPYrJS53A3y8EnMVmp8wFVsxx8EpOVOp/EZDYEn8RkxconMZmZnWQc7mZmKTRkuEuqlvRjST+R9IakLyXt50p6WdKbkr4raVLSXpUsb03Wzxzfr2BmZsfKp+feAyyIiN8ELgKukHQJcDdwT0TMAnYBDcn2DcCuiLgAuCfZzszMJtCQ4R5Z+5LFyuQRwALg8aR9NbA4eX1NskyyfqEkjVnFZmY2pLymQkoqBzYAFwB/BfwTsDsiepNNuoDa5HUt8DZARPRK2gNMBd49Zp+NQCNATU0N7e3to/oiZuNl3759/n1ayckr3COiD7hI0hTg+0Cu0/T651Tm6qUfN98yIlYCKyE7FdJTzaxYeSqklaJhzZaJiN1AO3AJMEVS/x+H6cA7yesuYAZAsv4M4L2xKNbMzPKTz2yZs5MeO5JOAT4OdAJtwLXJZtcDTyWv1yTLJOvXRTGcKWVmdhLJZ1hmGrA6GXcvAx6NiLWStgCPSPozYCPQkmzfAvxvSVvJ9tivG4e6zczsBPKZLbM5Ij4cEb8REXMi4stJ+1sRcXFEXBARSyKiJ2nvTpYvSNa/Nd5fwmw8+E5MVsp84TCzHHwnJit1vvyAWQ6+E5OVOoe7WQ6+E5OVOoe7WQ6+E5OVOoe7WQ6+E5OVOh9QNcvBd2KyUuc7MZkNwZcfsGLlOzGZmZ1kHO5mZinkcDczSyGHu9kgfPkBK2WeLWOWQ2trK8uWLePAgQMcPnyYn/3sZyxbtgzw5QesNLjnbpbD8uXL2bt3L1OnTqWsrIypU6eyd+9eli9fXujSzPLicDfL4b333uPUU0+lurqaiKC6uppTTz2V997zfWesNHhYxmwQkyZNYtWqVUeuCvmZz3yG/fv3F7oss7w43M0GsXfvXi6//HIOHTpEZWUlxXDCn1m+PCxjNoje3l6qqqqQRFVVFb29vYUuySxvDnezQVRWVtLT00NE0NPTQ2VlZaFLMsubw91sENXV1SdcNitmQ4a7pBmS2iR1SnpD0i1J+59I+hdJm5LHlQPec4ekrZJ+Kuny8fwCZuOhoqKCw4cPU1tbS1lZGbW1tRw+fJiKCh+mstKQzy+1F/ijiHhV0unABknPJ+vuiYivDdxY0mzgOuBC4FeA/yPpVyOibywLNxtPkydPZvfu3Rw4cICI4MCBAxw4cIApU6YUujSzvAzZc4+I7RHxavJ6L9AJ1J7gLdcAj0RET0T8HNgKXDwWxZpNlF27dlFeXs6OHTuICHbs2EF5eTm7du0qdGlmeRnWf2NKmgl8GHgZuBRYLul3gA6yvftdZIP/pQFv6yLHHwNJjUAjQE1NDe3t7cOv3mwc9fb2ctNNN7FgwQLWrVvH/fffD+DfqpWEvG/WIek04P8CmYj4nqQa4F0ggD8FpkXEDZL+CngxIv42eV8L8GxEPDHYvn2zDis2kjjzzDN54oknjjqJadeuXZ7vbkXjRDfryKvnLqkSeAL4TkR8DyAidgxY/yCwNlnsAmYMePt04J0R1G1WUJdeeimLFi2ip6eHqqoqLrvsMtauXTv0G82KwJDhLklAC9AZEV8f0D4tIrYni58GXk9erwEelvR1sgdUZwE/HtOqzcZZeXk5zz77LF/96leZPXs2W7Zs4bbbbqO8vLzQpZnlJZ+e+6XAZ4HXJG1K2u4Elkq6iOywzDbgRoCIeEPSo8AWsjNtbvZMGSs1Z5xxBrt37+YrX/kKO3fu5JxzzjnSblYKfINssxzKy8u58cYbWbVq1ZFhmRtuuIEHHniAvj73Vaw4+AbZZsNUV1fHK6+8wsGDBwE4ePAgr7zyCnV1dQWuzCw/DnezHMrKyujo6DgyMyYi6OjooKzM/2SsNPiXapbDa6+9BvzyejL9z/3tZsXO4W42iPPOO4/zzz+fsrIyzj//fM4777xCl2SWN18FyWwQO3bs4Omnnz5yEtMnP/nJQpdkljf33M0GsX//fh577DG6u7t57LHHfIs9KymeCmmWQ/bcvdyK4d+MGYzB5QfM0uJEoT2W+/AfACs0D8vYSSUi8no8/PDDnHvuuaxbt47/cOuTrFu3jnPPPZeHH344r/ebFZp77mY5LF26FICmpib+eUsnTc/VkclkjrSbFTuPuZsNYebtz7DtrqsKXYbZcXz5ATOzk4zD3cwshRzuZmYp5HA3M0shh7uZWQo53M3MUsjhbmaWQg53M7MUGjLcJc2Q1CapU9Ibkm5J2j8o6XlJbybPZybtkvRNSVslbZb0kfH+EmZmdrR8eu69wB9FRB1wCXCzpNnA7cALETELeCFZBlgEzEoejcB9Y161mZmd0JDhHhHbI+LV5PVeoBOoBa4BViebrQYWJ6+vAb4dWS8BUyRNG/PKzcxsUMO6cJikmcCHgZeBmojYDtk/AJLOSTarBd4e8LaupG37MftqJNuzp6amhvb29uFXbzZB/Pu0UpN3uEs6DXgC+IOI+PcTXNM614rjrk4WESuBlZC9cNi8efPyLcVsYv3gGfz7tFKT12wZSZVkg/07EfG9pHlH/3BL8rwzae8CZgx4+3TgnbEp18zM8pHPbBkBLUBnRHx9wKo1wPXJ6+uBpwa0/04ya+YSYE//8I2ZmU2MfIZlLgU+C7wmaVPSdidwF/CopAbgn4ElybpngSuBrcD7wO+OacVmZjakIcM9ItaTexwdYGGO7QO4eZR1mZnZKPgMVTOzFHK4m5mlkMPdzCyFHO5mZinkcDczSyGHu5lZCg3r2jJmxeQ3v/T37DlwaEI+a+btz4zr/s84pZKffPET4/oZdnJxuFvJ2nPgENvuumrcP6e9vX3cry0z3n887OTjYRkzsxRyuJuZpZDD3cwshRzuZmYp5HA3M0shh7uZWQo53M3MUsjhbmaWQj6JyUrW6XW38x9X3z4xH7Z6fHd/eh3A+J+QZScPh7uVrL2dd/kMVbNBeFjGzCyFhgx3Sask7ZT0+oC2P5H0L5I2JY8rB6y7Q9JWST+VdPl4FW5mZoPLp+f+EHBFjvZ7IuKi5PEsgKTZwHXAhcl7/lpS+VgVa2Zm+Rky3CPih8B7ee7vGuCRiOiJiJ8DW4GLR1GfmZmNwGjG3JdL2pwM25yZtNUCbw/YpitpMzOzCTTS2TL3AX8KRPL8F8ANgHJsG7l2IKkRaASoqamhvb19hKXYyWwifjf79u2bkM/xvwEbSyMK94jY0f9a0oPA2mSxC5gxYNPpwDuD7GMlsBKgvr4+xnuqmaXQD57hcz/YPwEfJGB8P+eMUyrHfbqlnVxGFO6SpkXE9mTx00D/TJo1wMOSvg78CjAL+PGoqzTLYSLmuEN2DvpEfZbZWBky3CW1AvOAsyR1AV8E5km6iOyQyzbgRoCIeEPSo8AWoBe4OSL6xqd0MzMbzJDhHhFLczS3nGD7DJAZTVFmZjY6PkPVzCyFHO5mZinkcDczSyGHu5lZCjnczcxSyOFuZpZCDnczsxRyuJuZpZDD3cwshRzuZmYp5HA3M0shh7uZWQo53M3MUsjhbmaWQg53M7MUcribmaWQw93MLIUc7mZmKeRwNzNLIYe7mVkKDRnuklZJ2inp9QFtH5T0vKQ3k+czk3ZJ+qakrZI2S/rIeBZvZma55dNzfwi44pi224EXImIW8EKyDLAImJU8GoH7xqZMMzMbjiHDPSJ+CLx3TPM1wOrk9Wpg8YD2b0fWS8AUSdPGqlizidTU1ER1dTW/uPtqqquraWpqKnRJZnmrGOH7aiJiO0BEbJd0TtJeC7w9YLuupG37sTuQ1Ei2d09NTQ3t7e0jLMVs7H3jG9/g6aefprGxkbXVC7m6+wXuu+8+urq6uOWWWwpdntmQFBFDbyTNBNZGxJxkeXdETBmwfldEnCnpGeDPI2J90v4C8IWI2HCi/dfX10dHR8fIv4VZniRNyOfk8+/KbLQkbYiI+lzrRjpbZkf/cEvyvDNp7wJmDNhuOvDOCD/DbMxFRF4PgFWrVnHhhRdSVlbGhRdeyKpVq/Leh1mhjXRYZg1wPXBX8vzUgPblkh4BPgrs6R++MSslFRUV3HrrrTz++OP09fVRXl7OtddeS0XFSP/JmE2sfKZCtgIvAr8mqUtSA9lQv0zSm8BlyTLAs8BbwFbgQeD3xqVqs3E2efJk9uzZw8aNG+nt7WXjxo3s2bOHyZMnF7o0s7wM2Q2JiKWDrFqYY9sAbh5tUWaFtnv3bm688UbuvPNOenp6qKqqorGxkQceeKDQpZnlxWeomuVQV1fHkiVL6O7upq2tje7ubpYsWUJdXV2hSzPLi8PdLIfm5mYaGhpoa2ujt7eXtrY2GhoaaG5uLnRpZnnx0SGzHJYuzY5GNjU10dnZSV1dHZlM5ki7WbHLa577ePM8dytm7e3tzJs3r9BlmB1nPOa5m5lZEXO4m5mlkMPdzCyFHO5mZinkcDczS6GimC0j6d+AXxS6DrNBnAW8W+gizHL4UEScnWtFUYS7WTGT1DHYdDOzYuVhGTOzFHK4m5mlkMPdbGgrC12A2XB5zN3MLIXcczczSyGHu5lZCjnczcxSyOFuJxVJiyXNHrD8ZUkfL2RNZuPBB1StZEgS2d/s4VHs4yFgbUQ8PmaFmRUh99ytqEmaKalT0l8DrwKflfSipFclPSbptGS7uyRtkbRZ0tcG2dfHgE8BX5W0SdL5kh6SdG2yfpuk/5nsv0PSRyT9naR/krRswH5uk/RK8llfGqL+JyVtkPSGpMak7SZJXxmwzeck3Zu8/h+S/lHS85JaJd06uv8F7aQVEX74UbQPYCZwGLiE7DVefgh8IFm3Avhj4IPAT/nlf4lOOcH+HgKuzbUMbANuSl7fA2wGTgfOBnYm7Z8gO+9dZDtHa4H/fILP+2DyfArwOjA12d/WAds8B8wF6oFNybanA28Ctxb6/wM/SvPhe6haKfhFRLwk6WpgNvAP2REaJgEvAv8OdAPfkvQM2cAdqTXJ82vAaRGxF9grqVvSFLLh/glgY7LdacAssn90cvl9SZ9OXs8AZiXf5S1Jl5AN8F8D/gG4BXgqIg4ASHp6FN/DTnIOdysF+5NnAc9HxHF3qZZ0MbAQuA5YDiwY4Wf1JM+HB7zuX65IavjziHhgqB1Jmgd8HPhPEfG+pHagOln9XeC3gH8Evh8RkRxTMBsTHnO3UvIScKmkCwAknSrpV5Nx9zMi4lngD4CLTrCPvWSHPEbq74AbBoz110o6Z5BtzwB2JcH+62SHlvp9D1gMLCUb9ADrgU9Kqk72f9Uo6rSTnHvuVjIi4t8kfQ5olVSVNP93soH9lKRqsj3r/3aC3TwCPCjp94FrR1DD30uqA15MOtr7gN8GdubY/AfAMkmbyR4TeGnAfnZJ2gLMjogfJ22vSFoD/ITs/Q06gD3DrdEMPBXSrKhIOi0i9kk6lew4fmNEvFrouqz0uOduVlxWJidZVQOrHew2Uu65WypJagaWHNP8WERkxuGzpgIv5Fi1MCL+31h/nlk+HO5mZink2TJmZinkcDczSyGHu5lZCjnczcxS6P8DXtjE3qAwI0wAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df['2018-12-10'][['res_time_avg']].boxplot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\wjp\\anaconda3\\lib\\site-packages\\ipykernel_launcher.py:2: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n",
      "  \n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-12-10 00:57:23</th>\n",
       "      <td>3</td>\n",
       "      <td>955.10</td>\n",
       "      <td>135.53</td>\n",
       "      <td>603.50</td>\n",
       "      <td>318.0</td>\n",
       "      <td>2018-12-10 00:57:23</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 01:17:23</th>\n",
       "      <td>1</td>\n",
       "      <td>355.94</td>\n",
       "      <td>355.94</td>\n",
       "      <td>355.94</td>\n",
       "      <td>355.0</td>\n",
       "      <td>2018-12-10 01:17:23</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 01:25:23</th>\n",
       "      <td>1</td>\n",
       "      <td>375.90</td>\n",
       "      <td>375.90</td>\n",
       "      <td>375.90</td>\n",
       "      <td>375.0</td>\n",
       "      <td>2018-12-10 01:25:23</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 02:31:23</th>\n",
       "      <td>1</td>\n",
       "      <td>334.07</td>\n",
       "      <td>334.07</td>\n",
       "      <td>334.07</td>\n",
       "      <td>334.0</td>\n",
       "      <td>2018-12-10 02:31:23</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 09:27:24</th>\n",
       "      <td>1</td>\n",
       "      <td>345.31</td>\n",
       "      <td>345.31</td>\n",
       "      <td>345.31</td>\n",
       "      <td>345.0</td>\n",
       "      <td>2018-12-10 09:27:24</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 12:17:24</th>\n",
       "      <td>1</td>\n",
       "      <td>441.05</td>\n",
       "      <td>441.05</td>\n",
       "      <td>441.05</td>\n",
       "      <td>441.0</td>\n",
       "      <td>2018-12-10 12:17:24</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-12-10 23:45:24</th>\n",
       "      <td>6</td>\n",
       "      <td>2113.97</td>\n",
       "      <td>147.23</td>\n",
       "      <td>631.96</td>\n",
       "      <td>352.0</td>\n",
       "      <td>2018-12-10 23:45:24</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-12-10 00:57:23      3        955.10        135.53        603.50   \n",
       "2018-12-10 01:17:23      1        355.94        355.94        355.94   \n",
       "2018-12-10 01:25:23      1        375.90        375.90        375.90   \n",
       "2018-12-10 02:31:23      1        334.07        334.07        334.07   \n",
       "2018-12-10 09:27:24      1        345.31        345.31        345.31   \n",
       "2018-12-10 12:17:24      1        441.05        441.05        441.05   \n",
       "2018-12-10 23:45:24      6       2113.97        147.23        631.96   \n",
       "\n",
       "                     res_time_avg           created_at  \n",
       "created_at                                              \n",
       "2018-12-10 00:57:23         318.0  2018-12-10 00:57:23  \n",
       "2018-12-10 01:17:23         355.0  2018-12-10 01:17:23  \n",
       "2018-12-10 01:25:23         375.0  2018-12-10 01:25:23  \n",
       "2018-12-10 02:31:23         334.0  2018-12-10 02:31:23  \n",
       "2018-12-10 09:27:24         345.0  2018-12-10 09:27:24  \n",
       "2018-12-10 12:17:24         441.0  2018-12-10 12:17:24  \n",
       "2018-12-10 23:45:24         352.0  2018-12-10 23:45:24  "
      ]
     },
     "execution_count": 79,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df2 = df['2018-12-10']\n",
    "df2[df['res_time_avg']>300]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df['2018-12-10'][['res_time_sum',\t'res_time_min',\t'res_time_max',\t'res_time_avg']].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = df['2018-12-10'].resample('20T').mean()\n",
    "data[['res_time_sum',\t'res_time_min',\t'res_time_max',\t'res_time_avg']].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df['2018-12-10':'2018-12-19']['count'].plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Int64Index([0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n",
       "            ...\n",
       "            0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n",
       "           dtype='int64', name='created_at', length=855)"
      ]
     },
     "execution_count": 85,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 看周末与工作日差别\n",
    "df['2018-12-10'].index.weekday  # 0代表周一"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {},
   "outputs": [],
   "source": [
    "df['weekday'] = df.index.weekday"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "      <th>weekday</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:00:07</th>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:01:07</th>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:02:07</th>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:03:07</th>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-11-01 00:00:07      8       1057.31         88.75        177.72   \n",
       "2018-11-01 00:01:07      5        749.12        103.79        240.38   \n",
       "2018-11-01 00:02:07      5        845.84        136.31        225.73   \n",
       "2018-11-01 00:03:07      9       1305.52         90.12        196.61   \n",
       "\n",
       "                     res_time_avg           created_at  weekday  \n",
       "created_at                                                       \n",
       "2018-11-01 00:00:07         132.0  2018-11-01 00:00:07        3  \n",
       "2018-11-01 00:01:07         149.0  2018-11-01 00:01:07        3  \n",
       "2018-11-01 00:02:07         169.0  2018-11-01 00:02:07        3  \n",
       "2018-11-01 00:03:07         145.0  2018-11-01 00:03:07        3  "
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head(4)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>res_time_sum</th>\n",
       "      <th>res_time_min</th>\n",
       "      <th>res_time_max</th>\n",
       "      <th>res_time_avg</th>\n",
       "      <th>created_at</th>\n",
       "      <th>weekday</th>\n",
       "      <th>weekend</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:00:07</th>\n",
       "      <td>8</td>\n",
       "      <td>1057.31</td>\n",
       "      <td>88.75</td>\n",
       "      <td>177.72</td>\n",
       "      <td>132.0</td>\n",
       "      <td>2018-11-01 00:00:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:01:07</th>\n",
       "      <td>5</td>\n",
       "      <td>749.12</td>\n",
       "      <td>103.79</td>\n",
       "      <td>240.38</td>\n",
       "      <td>149.0</td>\n",
       "      <td>2018-11-01 00:01:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:02:07</th>\n",
       "      <td>5</td>\n",
       "      <td>845.84</td>\n",
       "      <td>136.31</td>\n",
       "      <td>225.73</td>\n",
       "      <td>169.0</td>\n",
       "      <td>2018-11-01 00:02:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:03:07</th>\n",
       "      <td>9</td>\n",
       "      <td>1305.52</td>\n",
       "      <td>90.12</td>\n",
       "      <td>196.61</td>\n",
       "      <td>145.0</td>\n",
       "      <td>2018-11-01 00:03:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2018-11-01 00:04:07</th>\n",
       "      <td>3</td>\n",
       "      <td>568.89</td>\n",
       "      <td>138.45</td>\n",
       "      <td>232.02</td>\n",
       "      <td>189.0</td>\n",
       "      <td>2018-11-01 00:04:07</td>\n",
       "      <td>3</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     count  res_time_sum  res_time_min  res_time_max  \\\n",
       "created_at                                                             \n",
       "2018-11-01 00:00:07      8       1057.31         88.75        177.72   \n",
       "2018-11-01 00:01:07      5        749.12        103.79        240.38   \n",
       "2018-11-01 00:02:07      5        845.84        136.31        225.73   \n",
       "2018-11-01 00:03:07      9       1305.52         90.12        196.61   \n",
       "2018-11-01 00:04:07      3        568.89        138.45        232.02   \n",
       "\n",
       "                     res_time_avg           created_at  weekday  weekend  \n",
       "created_at                                                                \n",
       "2018-11-01 00:00:07         132.0  2018-11-01 00:00:07        3    False  \n",
       "2018-11-01 00:01:07         149.0  2018-11-01 00:01:07        3    False  \n",
       "2018-11-01 00:02:07         169.0  2018-11-01 00:02:07        3    False  \n",
       "2018-11-01 00:03:07         145.0  2018-11-01 00:03:07        3    False  \n",
       "2018-11-01 00:04:07         189.0  2018-11-01 00:04:07        3    False  "
      ]
     },
     "execution_count": 89,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 判断是否是周末 ，是不是5，6\n",
    "df['weekend'] = df['weekday'].isin([5,6])\n",
    "df.head(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "weekend\n",
       "False    7.016846\n",
       "True     7.574989\n",
       "Name: count, dtype: float64"
      ]
     },
     "execution_count": 90,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.groupby('weekend')['count'].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "weekend  created_at\n",
       "False    0              3.239120\n",
       "         1              1.668388\n",
       "         2              1.162551\n",
       "         3              1.086705\n",
       "         4              1.155556\n",
       "         5              1.136364\n",
       "         6              1.000000\n",
       "         7              1.000000\n",
       "         8              1.000000\n",
       "         9              1.080000\n",
       "         10             1.239011\n",
       "         11             2.031690\n",
       "         12             4.195845\n",
       "         13             6.668042\n",
       "         14             8.260503\n",
       "         15             8.934448\n",
       "         16             8.466504\n",
       "         17             6.784996\n",
       "         18             6.717731\n",
       "         19             8.655913\n",
       "         20            10.536496\n",
       "         21            10.846906\n",
       "         22             9.034164\n",
       "         23             5.946834\n",
       "True     0              3.467782\n",
       "         1              1.741849\n",
       "         2              1.161826\n",
       "         3              1.050000\n",
       "         4              1.076923\n",
       "         5              1.333333\n",
       "         6              1.000000\n",
       "         7              1.000000\n",
       "         8              1.071429\n",
       "         9              1.144928\n",
       "         10             1.254111\n",
       "         11             1.992958\n",
       "         12             4.031889\n",
       "         13             6.905772\n",
       "         14             8.851321\n",
       "         15             9.858422\n",
       "         16             9.420550\n",
       "         17             7.334743\n",
       "         18             7.342150\n",
       "         19             9.270430\n",
       "         20            11.173609\n",
       "         21            11.695043\n",
       "         22            10.419916\n",
       "         23             7.025452\n",
       "Name: count, dtype: float64"
      ]
     },
     "execution_count": 91,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 周末平均调用次数多\n",
    "# 查看周末时间段情况\n",
    "\n",
    "df.groupby(['weekend',df.index.hour])['count'].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df.groupby(['weekend',df.index.hour])['count'].mean().plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th>weekend</th>\n",
       "      <th>False</th>\n",
       "      <th>True</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>created_at</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>3.239120</td>\n",
       "      <td>3.467782</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1.668388</td>\n",
       "      <td>1.741849</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1.162551</td>\n",
       "      <td>1.161826</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1.086705</td>\n",
       "      <td>1.050000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1.155556</td>\n",
       "      <td>1.076923</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>1.136364</td>\n",
       "      <td>1.333333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.071429</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>1.080000</td>\n",
       "      <td>1.144928</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>1.239011</td>\n",
       "      <td>1.254111</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>2.031690</td>\n",
       "      <td>1.992958</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>4.195845</td>\n",
       "      <td>4.031889</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>6.668042</td>\n",
       "      <td>6.905772</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>8.260503</td>\n",
       "      <td>8.851321</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>8.934448</td>\n",
       "      <td>9.858422</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>8.466504</td>\n",
       "      <td>9.420550</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>6.784996</td>\n",
       "      <td>7.334743</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>6.717731</td>\n",
       "      <td>7.342150</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>8.655913</td>\n",
       "      <td>9.270430</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>10.536496</td>\n",
       "      <td>11.173609</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>10.846906</td>\n",
       "      <td>11.695043</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>9.034164</td>\n",
       "      <td>10.419916</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>5.946834</td>\n",
       "      <td>7.025452</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "weekend         False      True \n",
       "created_at                      \n",
       "0            3.239120   3.467782\n",
       "1            1.668388   1.741849\n",
       "2            1.162551   1.161826\n",
       "3            1.086705   1.050000\n",
       "4            1.155556   1.076923\n",
       "5            1.136364   1.333333\n",
       "6            1.000000   1.000000\n",
       "7            1.000000   1.000000\n",
       "8            1.000000   1.071429\n",
       "9            1.080000   1.144928\n",
       "10           1.239011   1.254111\n",
       "11           2.031690   1.992958\n",
       "12           4.195845   4.031889\n",
       "13           6.668042   6.905772\n",
       "14           8.260503   8.851321\n",
       "15           8.934448   9.858422\n",
       "16           8.466504   9.420550\n",
       "17           6.784996   7.334743\n",
       "18           6.717731   7.342150\n",
       "19           8.655913   9.270430\n",
       "20          10.536496  11.173609\n",
       "21          10.846906  11.695043\n",
       "22           9.034164  10.419916\n",
       "23           5.946834   7.025452"
      ]
     },
     "execution_count": 94,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.groupby(['weekend', df.index.hour])['count'].mean().unstack(level = 0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "df.groupby(['weekend', df.index.hour])['count'].mean().unstack(level = 0).plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
